<html>
 <head>
  <link href="./leetcode-problem.css" rel="stylesheet" type="text/css">
 </head>
 <body>
  <div class="question_difficulty">
   难度：Medium
  </div>
  <div>
   <h1 class="question_title">
    394. Decode String
   </h1>
   <p>
    Given an encoded string, return it's decoded string.
   </p>
   <p>
    The encoding rule is:
    <code>
     k[encoded_string]
    </code>
    , where the
    <i>
     encoded_string
    </i>
    inside the square brackets is being repeated exactly
    <i>
     k
    </i>
    times. Note that
    <i>
     k
    </i>
    is guaranteed to be a positive integer.
   </p>
   <p>
    You may assume that the input string is always valid; No extra white spaces, square brackets are well-formed, etc.
   </p>
   <p>
    Furthermore, you may assume that the original data does not contain any digits and that digits are only for those repeat numbers,
    <i>
     k
    </i>
    . For example, there won't be input like
    <code>
     3a
    </code>
    or
    <code>
     2[4]
    </code>
    .
   </p>
   <p>
    <b>
     Examples:
    </b>
   </p>
   <pre>
s = "3[a]2[bc]", return "aaabcbc".
s = "3[a2[c]]", return "accaccacc".
s = "2[abc]3[cd]ef", return "abcabccdcdcdef".
</pre>
  </div>
  <div>
   <h1 class="question_title">
    394. 字符串解码
   </h1>
   <p>
    给定一个经过编码的字符串，返回它解码后的字符串。
   </p>
   <p>
    编码规则为:
    <code>
     k[encoded_string]
    </code>
    ，表示其中方括号内部的
    <em>
     encoded_string
    </em>
    正好重复
    <em>
     k
    </em>
    次。注意
    <em>
     k
    </em>
    保证为正整数。
   </p>
   <p>
    你可以认为输入字符串总是有效的；输入字符串中没有额外的空格，且输入的方括号总是符合格式要求的。
   </p>
   <p>
    此外，你可以认为原始数据不包含数字，所有的数字只表示重复的次数
    <em>
     k
    </em>
    ，例如不会出现像&nbsp;
    <code>
     3a
    </code>
    &nbsp;或&nbsp;
    <code>
     2[4]
    </code>
    &nbsp;的输入。
   </p>
   <p>
    <strong>
     示例:
    </strong>
   </p>
   <pre>
s = "3[a]2[bc]", 返回 "aaabcbc".
s = "3[a2[c]]", 返回 "accaccacc".
s = "2[abc]3[cd]ef", 返回 "abcabccdcdcdef".
</pre>
  </div>
 </body>
</html>